<template>
  <div id="dialog">
    <div class="dialog-wrapper" v-if="open">
      <div class="dialog-body">
        <div class="dialog-top-bar">
          <span class="dialog-title">{{headerTitle}}</span>
          <button class="dialog-close" @click="funcCancel"></button>
        </div>
        <div class="dialog-content">
          <slot name="body"></slot>
        </div>
        <div class="bottom-content" v-if="!cancelable">
          <button class="dialog-confirm" @click="funcConfirm()">{{confirmTitle}}</button>
        </div>
        <div class="bottom-content-double" v-else>
          <button class="dialog-cancel" @click="funcCancel()">{{cancelTitle}}</button>
          <button class="dialog-confirm" @click="funcConfirm()">{{confirmTitle}}</button>
        </div>
      </div>
    </div>
  </div>
</template>

<script>

export default {
  props: {
    headerTitle: String,
    confirmTitle: {
      type: String,
      default: "确定"
    },
    cancelTitle: {
      type: String,
      default: "取消"
    },
    cancelable: {
      type: Boolean,
      default: false
    },
    funcConfirm: Function,
    funcCancel: Function,
    open: Boolean,
  },
  data() {
    return {
    }
  },
  // 监听属性 类似于data概念
  computed: {
  },
  // 监控data中的数据变化
  watch: {
  },
  // 生命周期 - 创建完成（可以访问当前this实例）
  created() {
  },
  // 生命周期 - 挂载完成（可以访问DOM元素）
  mounted() {
  },
  beforeCreate() {}, // 生命周期 - 创建之前
  beforeMount() {
  }, // 生命周期 - 挂载之前
  beforeUpdate() {}, // 生命周期 - 更新之前
  updated() {}, // 生命周期 - 更新之后
  beforeDestroy() {}, // 生命周期 - 销毁之前
  destroyed() {}, // 生命周期 - 销毁完成
  activated() {},
  // 方法集合
  methods: {
  } // 如果页面有keep-alive缓存功能，这个函数会触发
}
</script>
<style scoped lang="scss">
@import "@/style/scss/component/dialog/dialog.scss"
</style>
